package com.tripcube.ai.service;

import com.tripcube.ai.model.dto.KnowledgeRetrievalDTO;
import com.tripcube.ai.model.vo.KnowledgeRetrievalVO;

/**
 * 知识检索服务接口
 * 
 * @author tripcube
 */
public interface KnowledgeRetrievalService {

    KnowledgeRetrievalVO retrieveKnowledge(KnowledgeRetrievalDTO retrievalDTO);

    KnowledgeRetrievalVO retrieveKnowledge(String query, String knowledgeBaseId, Integer topK);

    KnowledgeRetrievalVO retrieveKnowledge(String query, String knowledgeBaseId, Integer topK, Double similarityThreshold);

    KnowledgeRetrievalVO retrieveFromMultipleKnowledgeBases(String query, String[] knowledgeBaseIds, Integer topK);
}